/* 严格模式 */

// noImplicitAny：在某些情况下，如果不存在类型注释，TypeScript 将回退到变量的 any 类型，当它无法推断该类型时。
// 启用 noImplicitAny (opens new window)配置项后，当类型被隐式推断为 any 时，会抛出一个错误
function fn(s) {
  // No error?
  console.log(s.subtr(3));
}
fn(42);

// strictNullChecks：
declare const loggedInUsername: string;

const users = [
  { name: "Oby", age: 12 },
  { name: "Heera", age: 32 },
];

const loggedInUser = users.find((u) => u.name === loggedInUsername);
console.log(loggedInUser.age);